package org.jeecg.modules.param.station.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.param.station.entity.BikeStation;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.param.station.vo.*;
import org.jeecg.modules.utils.page.PageInfo;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * @Description: bike_station
 * @Author: 月月鸟
 * @Date:   2021-05-19
 * @Version: V1.0
 */
public interface IBikeStationService extends IService<BikeStation> {

    Result<?> stationList(Page<BikeStation> stationPage, BikeStation bikeStation);

    List<UpSiteRsp> upSiteList(Integer pageNo, Integer pageSize, UpSiteReq upSiteReq);

    List<UpSiteRsp> upSitePileList(Integer pageNo, Integer pageSize, UpSiteReq upSiteReq);

    Result<?> add(BikeStation bikeStation);

    Result<?> edit(BikeStation bikeStation);

    ModelAndView exportXls(HttpServletRequest request, BikeStation bikeStation);

    Result<?> lockStation(StationLock stationLock);

    Result<?> deleteById(String id);

    void addPile(BikeStation tb);

    void delPile(List<String> strings);

    String getAreaId(String areaCode);

    Result<?> clearRegister(String id);
    /**
     *  网点借还车统计
     */
    List<StatisticalRsp> statistical(StatisticalReq statisticalReq, List<BikeStation> bikeStationPage);

    /**
     *  网点借还车统计 导出
     */
    ModelAndView exportStatisticalXls(HttpServletRequest request, StatisticalReq statisticalReq, List<BikeStation> list);

    BikeStation getStationByCode(String code);

    void addAreaUser(String manageName,String id);

    List<SysUserRe> getAdminList(SysUserRe sysUserRe);
}
